The present invention relates to an image processing technique for efficient rendering of three-dimensional images on a two-dimensional screen such as a display device.
Image processing capacities of image processors, such as game consoles or personal computers, that renders images on a display device have significantly been increased with a recent increase in processor speed.
For example, two-dimensional images that are used to display fine three-dimensional images of high quality on a two-dimensional screen can be produced in almost real time.
Two-dimensional images are produced with a plurality of primitives such as polygons that make up an image of a virtual object included in a three-dimensional image (hereinafter, referred to as an “object”) and an attribute data set describing attributes of the relevant primitive, such as the shape, size, color, and brightness.
Image processing for rendering three-dimensional images on a two-dimensional screen may generally be classified into geometry processing and rendering. The geometry processing includes coordinate transformation to transform the coordinates of a set of vertices of primitives. The rendering is used to determine, for example, the color of each pixel from the geometry data obtained as a result of the geometry processing to create a two-dimensional image.
In this specification, a device that mainly performs rendering operations (including a distributed system and a semiconductor device) is referred to as a rendering processing unit. The rendering processing unit forms a portion of an image processor.
Some rendering processing units can render graphics and images, such as complicated pictures for better visual effects by rendering the same primitives two or more times. The rendering with two or more render passes is referred to as “multipass rendering”. A single process in the multipass rendering is referred to as a “pass”. For multipass rendering with three render passes, a polygon may be rendered without blending any texture during the first pass, a texture may be added during the second pass, and a different texture may be added during the third pass.
Conventional rendering processing units perform rendering multiple times for all primitives during the multipass rendering. This increases the number of rendering operations and, in turn, the amount of processing, when graphics or images of a complicated picture is to be rendered, resulting in a larger processing load.
The present invention is made with respect to the above-mentioned problems and an object thereof is to provide a rendering processing unit and a rendering method with which rendering operations for three-dimensional images can be achieved with less processing.
Another object of the present invention is to provide an image processor and components thereof that produce an image for better visual effects, without any overhead.